void recursion(int level, int param) { 
  // recursion terminator
  if (/*condition*/) { 
    // 一、递归终结条件
    // process result 
    return ; 
  }
  
  // process current logic 
  // 二、处理当前层逻辑
  process(level, param);  

  // drill down 
  // 三、下探到下一层
  recursion(level + 1, param);
}
